package com.tlw.practice.tlw.service;

import com.tlw.practice.tlw.common.ResultCode;
import com.tlw.practice.tlw.entity.AuditEntity;

import java.util.List;

/**
 * 审计： 记录对象修改前后数据
 */
public interface AuditService {
    /**
     * 记录两个对象有变化的属性
     * @param oldLeave
     * @param newLeave
     * @return
     */
    ResultCode recodeChange(Object oldLeave, Object newLeave);

    /**
     * 通过请假单ID获取变更记录
     * @param leaveId
     * @return
     */
    List<AuditEntity> findOneByLeaveId(String leaveId);

    /**
     * 保存变更记录
     * @param audit
     * @return
     */
    int saveAudit(AuditEntity audit);
}
